﻿using CodeGenerator.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CodeGenerator.Template
{
    public interface ITemplate
    {
        string TransformText();
        string Filename { get; }
        MetaData Data { get; set; }
        List<LookupClassModel> lookups { get; set; }
        List<PickupListModel> pickuplist { get; set; }
        bool IsGenerateOneTime { get; } //1 ไฟล์ tt Generate ไฟล์เดียว เช่น Web.config
        bool IsGenerateFolder { get; } //Generate Folder ไว้ก่อนจะใส่ไฟล์ เช่น Template.Web.Views.*.tt
        bool IsRequiredOnlyOneMember { get; } //ให้ส่ง Class เข้าไปใน List แค่ Class เดียว เช่น Web.Controller
        GenerateStyle GenerateStyle { get; } //ให้วน Loop Gen สำหรับ Attribute หรือ Gen แบบ Pickup
    }
}
